<?php

namespace app\admin\model;

use think\Model;

class Goods extends Model
{
    //主键
    protected $pk = 'goods_id';
    // 获取器时间
//    public function getAddTimeAttr($v)
//    {
//        return date('Y-m-d', $v);
//    }
    //获取器时间
    public static function getAddTimeAttr($v)
    {
        return date('Y-m-d',$v);
    }




//    // 获取器推荐
//    public function getIfShowAttr($value)
//    {
//        if ($value==1){
//            return "<img src='/static/images/√.jpg' alt='' width='25px' height='25px'>";
//        }
//        if ($value==0){
//            return "<img src='/static/images/X.jpg' alt='' width='25px' height='25px'>";
//        }
//    }
//    // 获取器热门
//    public function getIfHotAttr($value)
//    {
//        if ($value==1){
//            return "<img src='/static/images/√.jpg' alt='' width='25px' height='25px'>";
//        }
//        if ($value==0){
//            return "<img src='/static/images/X.jpg' alt='' width='25px' height='25px'>";
//        }
//    }
//    // 获取器下架
//    public function getRecommendedAttr($value)
//    {
//        if ($value==1){
//            return "<img src='/static/images/√.jpg' alt='' width='25px' height='25px'>";
//        }
//        if ($value==0){
//            return "<img src='/static/images/X.jpg' alt='' width='25px' height='25px'>";
//        }
//    }

    // 搜索器模糊搜索
    public function searchKeywordsAttr($q,$v,$d)
    {
        $q->where('goods_name','like','%'.$v.'%');
    }
    // 搜索器是否上架
    public function searchIfShowAttr($q,$v,$d)
    {
        $q->where('g.if_show','in',$v);
    }
    // 搜索器是否推荐
    public function searchRecommendedAttr($q,$v,$d)
    {
        $q->where('g.recommended','=',$v);
    }
    // 搜索器最小时间
    public function searchMintimeAttr($q,$v,$d)
    {
        $q->whereTime('g.add_time','>=',$v);
    }
    // 搜索器最大时间
    public function searchMaxtimeAttr($q,$v,$d)
    {
        $q->whereTime('g.add_time','<=',$v);
    }
    // 搜索器最小金额
    public function searchMinmoneyAttr($q,$v,$d)
    {
        $q->where('g.price','>=',$v);
    }
    // 搜索器最大金额
    public function searchMaxmoneyAttr($q,$v,$d)
    {
        $q->where('g.price','<=',$v);
    }
    // 搜索器品牌
    public function searchBBrandAttr($q,$v,$d)
    {
        $q->where('g.brand','=',$v);
    }
    // 搜索器分类
    public function searchPidAttr($q,$v,$d)
    {
        $q->where('g.cate_id','=',$v);
    }

    // 查询数据
    public static function getGoodsSel($sdata,$order)
    {
        $sel = Goods::alias('g')
            ->field('g.goods_name,g.goods_id,g.price,g.add_time,g.recommended,g.if_show,g.if_hot,g.default_image')
            ->field('c.cate_name')
            ->field('b.brand_name')
            ->withSearch(array_keys($sdata),$sdata)
            ->join('gcategory c', 'g.cate_id = c.cate_id')
            ->join('brand b', 'g.brand = b.brand_id')
            ->order($order)
            ->paginate(['list_rows' => 10, 'query' => request()->param()]);

        return $sel;

    }


    // 新增数据
    public static function addGoodsInfo($data)
    {
        try{
            $res = Goods::strict(true)->save($data);
            $msg = '添加成功';
        }catch(\Exception $e){
            $res = false;
            $msg = $e->getMessage();
        }

        return [$res,$msg];
    }

    //修改数据
    public static function goodsEdit($param)
    {
        try{
            $res=Goods::find($param['goods_id'])->save($param);
            $msg='修改成功';
        }catch(\Exception $e){
            $res=false;
            $msg=$e->getMessage();
        }
        return [$res,$msg];
    }
}

